package com.ruoyi.bus.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.bus.vo.BookIngData;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * 车辆预约对象 wit_appoint
 * 
 * @author caiyanshan
 * @date 2021-04-14
 */
public class WitAppoint extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 预约ID */
    private Long appointId;
    
    /** 预约人名称 */
    @Excel(name = "预约人名称")
    private String userName;
    
    /** 预约线路名称 */
    @Excel(name = "预约线路名称")
    private String routeName;
    
    /** 站点名称 */
    @Excel(name = "站点名称")
    private String siteName;
    
    /** 起始站 */
    @Excel(name = "起始站")
    private String startSite;
    
    /** 终点站 */
    @Excel(name = "终点站")
    private String endSite;
    
    /** 预约班次 */
    @Excel(name = "预约班次")
    private String driveTime;

    /** 预约路线ID */
    /*@Excel(name = "预约路线ID")*/
    private Long routeId;
    /** 上车站点ID */
/*    @Excel(name = "上车站点ID")*/
    private Long siteId;

    /** 预约人ID */
    /*@Excel(name = "预约人ID")*/
    private Long userId;
    

    /** 车辆ID */
    /*@Excel(name = "车辆ID")*/
    private Long busId;
    
    /** 司机名称 */
    @Excel(name = "司机名称")
    private String driverUserName;
    
    @Excel(name = "司机手机号")
    private String driverUserPhone;

    /** 车牌号 */
    @Excel(name = "车牌号")
    private String busNumber;

    /** 车辆型号 */
    @Excel(name = "车辆型号")
    private String busModel;

    /** 司机ID */
    /*@Excel(name = "司机ID")*/
    private Long driverUserId;

    /** 预约状态 */
    private Integer appointStatus;
    
    @Excel(name = "预约状态")
    private String appointStatusName;
    
    
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
    private Date sendTime;//发车时间
    
    @Excel(name = "发车时间", dateFormat = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date gotoTime;
    
    
    private List<BookIngData> data;//批量预约
    
    private BookIngData bookIngData;//临时预约数据
    
    private String content;//点评内容
    
    private Integer isComment;//是否已点评 0未点评
    
    private Integer isCancel;//是否可以取消 0可以

    private Long planId;
    
    private String depts;

    private Integer inCarCount;
    
    private Integer tempStatus;
    
    private Integer allAppointStatus;
    
    private Integer isPlan;

    private Long endSiteId;

    private String endSiteName;

    public Long getEndSiteId() {
        return endSiteId;
    }

    public void setEndSiteId(Long endSiteId) {
        this.endSiteId = endSiteId;
    }

    public String getEndSiteName() {
        return endSiteName;
    }

    public void setEndSiteName(String endSiteName) {
        this.endSiteName = endSiteName;
    }

    public Integer getIsPlan() {
        return isPlan;
    }
    
    public void setIsPlan(Integer isPlan) {
        this.isPlan = isPlan;
    }
    
    public Integer getAllAppointStatus() {
        return allAppointStatus;
    }
    
    public void setAllAppointStatus(Integer allAppointStatus) {
        this.allAppointStatus = allAppointStatus;
    }
    
    public String getAppointStatusName() {
        return appointStatusName;
    }
    
    public void setAppointStatusName(String appointStatusName) {
        this.appointStatusName = appointStatusName;
    }
    
    public BookIngData getBookIngData() {
        return bookIngData;
    }
    
    public void setBookIngData(BookIngData bookIngData) {
        this.bookIngData = bookIngData;
    }
    
    public Integer getTempStatus() {
        return tempStatus;
    }
    
    public void setTempStatus(Integer tempStatus) {
        this.tempStatus = tempStatus;
    }
    
    public Integer getInCarCount() {
        return inCarCount;
    }

    public void setInCarCount(Integer inCarCount) {
        this.inCarCount = inCarCount;
    }

    public String getDepts() {
        return depts;
    }
    
    public void setDepts(String depts) {
        this.depts = depts;
    }
    
    public String getDriverUserPhone() {
        return driverUserPhone;
    }
    
    public void setDriverUserPhone(String driverUserPhone) {
        this.driverUserPhone = driverUserPhone;
    }
    
    public Long getPlanId() {
        return planId;
    }

    public void setPlanId(Long planId) {
        this.planId = planId;
    }

    public Date getSendTime() {
        return sendTime;
    }
    
    public void setSendTime(Date sendTime) {
        this.sendTime = sendTime;
    }
    
    public Integer getIsComment() {
        return isComment;
    }
    
    public void setIsComment(Integer isComment) {
        this.isComment = isComment;
    }
    
    public Integer getIsCancel() {
        return isCancel;
    }
    
    public void setIsCancel(Integer isCancel) {
        this.isCancel = isCancel;
    }
    
    public String getContent() {
        return content;
    }
    
    public void setContent(String content) {
        this.content = content;
    }
    
    public List<BookIngData> getData() {
        return data;
    }
    
    public void setData(List<BookIngData> data) {
        this.data = data;
    }
    
    public Date getGotoTime() {
        return gotoTime;
    }
    
    public void setGotoTime(Date gotoTime) {
        this.gotoTime = gotoTime;
    }
    
    public void setAppointId(Long appointId)
    {
        this.appointId = appointId;
    }

    public Long getAppointId() 
    {
        return appointId;
    }
    public void setDriveTime(String driveTime) 
    {
        this.driveTime = driveTime;
    }

    public String getDriveTime() 
    {
        return driveTime;
    }
    public void setRouteId(Long routeId) 
    {
        this.routeId = routeId;
    }

    public Long getRouteId() 
    {
        return routeId;
    }
    public void setRouteName(String routeName) 
    {
        this.routeName = routeName;
    }

    public String getRouteName() 
    {
        return routeName;
    }
    public void setStartSite(String startSite) 
    {
        this.startSite = startSite;
    }

    public String getStartSite() 
    {
        return startSite;
    }
    public void setEndSite(String endSite) 
    {
        this.endSite = endSite;
    }

    public String getEndSite() 
    {
        return endSite;
    }
    public void setSiteId(Long siteId) 
    {
        this.siteId = siteId;
    }

    public Long getSiteId() 
    {
        return siteId;
    }
    public void setSiteName(String siteName) 
    {
        this.siteName = siteName;
    }

    public String getSiteName() 
    {
        return siteName;
    }
    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }
    public void setUserName(String userName) 
    {
        this.userName = userName;
    }

    public String getUserName() 
    {
        return userName;
    }
    public void setBusId(Long busId) 
    {
        this.busId = busId;
    }

    public Long getBusId() 
    {
        return busId;
    }
    public void setBusNumber(String busNumber) 
    {
        this.busNumber = busNumber;
    }

    public String getBusNumber() 
    {
        return busNumber;
    }
    public void setBusModel(String busModel) 
    {
        this.busModel = busModel;
    }

    public String getBusModel() 
    {
        return busModel;
    }
    public void setDriverUserId(Long driverUserId) 
    {
        this.driverUserId = driverUserId;
    }

    public Long getDriverUserId() 
    {
        return driverUserId;
    }
    public void setDriverUserName(String driverUserName) 
    {
        this.driverUserName = driverUserName;
    }

    public String getDriverUserName() 
    {
        return driverUserName;
    }
    public void setAppointStatus(Integer appointStatus) 
    {
        this.appointStatus = appointStatus;
    }

    public Integer getAppointStatus() 
    {
        return appointStatus;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("appointId", getAppointId())
            .append("driveTime", getDriveTime())
            .append("routeId", getRouteId())
            .append("routeName", getRouteName())
            .append("startSite", getStartSite())
            .append("endSite", getEndSite())
            .append("siteId", getSiteId())
            .append("siteName", getSiteName())
            .append("userId", getUserId())
            .append("userName", getUserName())
            .append("busId", getBusId())
            .append("busNumber", getBusNumber())
            .append("busModel", getBusModel())
            .append("driverUserId", getDriverUserId())
            .append("driverUserName", getDriverUserName())
            .append("appointStatus", getAppointStatus())
            .append("createTime", getCreateTime())
            .toString();
    }
}
